package com.xcc.entity;

import java.io.Serializable;

/**
 * @create: 2019-07-02 16:10
 * @author: Aner
 * @description:
 **/
public class Permission implements Serializable {
    private Long id;
    private String permission; //权限标识 程序中判断使用，如“user:create”
    private String description; //权限描述，UI界面显示使用
    private Boolean available=Boolean.FALSE;  //是否可用，如果不可用将不会添加给用户

    public Permission() {
    }

    public Permission( String permission, String description, Boolean available) {
        this.permission = permission;
        this.description = description;
        this.available = available;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getPermission() {
        return permission;
    }

    public void setPermission(String permission) {
        this.permission = permission;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Boolean getAvailable() {
        return available;
    }

    public void setAvailable(Boolean available) {
        this.available = available;
    }

    @Override
    public boolean equals(Object obj) {
        if(this == obj) return true;
        if (obj == null || getClass() != obj.getClass()) return false;

        Permission role=(Permission) obj;

        if (id!=null ? !id.equals(role.id) : role.id !=null) return false;
        return true;
    }

    @Override
    public int hashCode() {
        return id!=null ? id.hashCode() : 0;
    }

    @Override
    public String toString() {
        return "Role{"  +
                "id="+id+
                ",permission='"+permission+'\''+
                ",description='"+description+'\''+
                ",availavle="+available+'}';
    }
}
